Digital image-capturing devices, such as scanners, digital still-image cameras and digital video cameras, are experiencing a rapid growth in popularity and are becoming increasingly affordable. One factor contributing to that growth is the availability of popular software applications and system tools that allow an average user to perform various rather sophisticated graphic operations on a captured image to obtain results with a reasonably good quality. Another factor contributing to that growth is that it has become commonplace for a user to use color images creatively in various forms of presentations and communications. Many users create their own original color images by using the image-capturing devices. For instance, a user can use a digital camera to take a picture of her family, edit the picture by performing compositing, morphing, color correction, or various other editing operations, then display or print the edited color image, insert the image in a presentation document or a Web page, or attach the image to an e-mail.
After an image is obtained with an image-capturing device, the color data of the image often have to go through some forms of color processing. Such color processing typically includes a color space conversion, because the color data generated by an image-capturing device are generally in a device-specific color space that is different from the color space or spaces used by the image-processing application for image editing. Besides a color space conversion, color corrections or filtering may also be performed on the color image data.
Since image acquisition using image-capturing devices has become an increasingly important part of computer usage, it is desirable to provide a way to makes it simpler for an average user to handle color processing of captured images. With existing color-capturing devices and image processing applications, however, either very simple color adjustments are performed at the front end of the data chain by the device or device driver, or very complicated color management operations requiring extensive user involvement is performed at the back end of the chain on the application level. In the existing color acquisition systems, there is no automation for advanced color management and no coordination to prevent duplicate color processing along the data chain. In particular, a color space conversion is typically performed on the application level. To perform the color space conversion operation, the user may be asked to specify the source and destination color spaces of the conversion and identify the color profiles to be used in the conversion. Such an approach assumes that the user has a good operative knowledge of color theories and various color spaces. Such knowledge is beyond the average consumers targeted by most of the image-capturing devices and image-processing applications. Accordingly, there is a need for a way to allow automated and flexible application of color management on color image data generated by image-capturing devices with minimal user involvement.